package com.sgcc.operate.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.google.common.collect.Lists;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.sgcc.common.core.annotation.Excel;
import com.sgcc.common.core.web.domain.BaseEntity;

/**
 * 运营方案制定对象 o_scheme_form
 * 
 * @author sgcc
 * @date 2021-03-23
 */
public class OSchemeForm extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 运营方案ID */
    @Excel(name = "运营方案ID")
    private String id;

    /** 运营方案名称 */
    @Excel(name = "运营方案名称")
    private String schemename;

    /** 方案开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "方案开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date starttime;

    /** 方案结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "方案结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endtime;

    /** 管理单位 */
    @Excel(name = "管理单位")
    private String manageorg;

    /** 预算来源说明 */
    @Excel(name = "预算来源说明")
    private String budgetdesc;

    /** 方案总预算 */
    @Excel(name = "方案总预算")
    private String schemebudget;

    /** 附件 */
    @Excel(name = "附件")
    private String attach;

    /** 维护人 */
    @Excel(name = "维护人")
    private String modifyemp;

    /** 维护时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "维护时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date modifytime;

    /** 维护人单位 */
    @Excel(name = "维护人单位")
    private String modifyorg;

    /** 方案状态 */
    @Excel(name = "方案状态")
    private String schemestatus;

    /** $column.columnComment */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "方案状态", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createDate;

    /** $column.columnComment */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "方案状态", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date updateDate;

    /** $column.columnComment */
    @Excel(name = "方案状态")
    private String delFlag;

    private List<OIndiContent> oindiContentList = Lists.newArrayList();		// 子表列表

    private String orgname; // 管理单位中文名称
    private String createByName; //制定人中文名称
    private int actinum; // 活动个数

    private int confiactinum; // 活动配置个数


    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }
    public void setSchemename(String schemename) 
    {
        this.schemename = schemename;
    }

    public String getSchemename() 
    {
        return schemename;
    }
    public void setStarttime(Date starttime) 
    {
        this.starttime = starttime;
    }

    public Date getStarttime() 
    {
        return starttime;
    }
    public void setEndtime(Date endtime) 
    {
        this.endtime = endtime;
    }

    public Date getEndtime() 
    {
        return endtime;
    }
    public void setManageorg(String manageorg) 
    {
        this.manageorg = manageorg;
    }

    public String getManageorg() 
    {
        return manageorg;
    }
    public void setBudgetdesc(String budgetdesc) 
    {
        this.budgetdesc = budgetdesc;
    }

    public String getBudgetdesc() 
    {
        return budgetdesc;
    }
    public void setSchemebudget(String schemebudget) 
    {
        this.schemebudget = schemebudget;
    }

    public String getSchemebudget() 
    {
        return schemebudget;
    }
    public void setAttach(String attach) 
    {
        this.attach = attach;
    }

    public String getAttach() 
    {
        return attach;
    }
    public void setModifyemp(String modifyemp) 
    {
        this.modifyemp = modifyemp;
    }

    public String getModifyemp() 
    {
        return modifyemp;
    }
    public void setModifytime(Date modifytime) 
    {
        this.modifytime = modifytime;
    }

    public Date getModifytime() 
    {
        return modifytime;
    }
    public void setModifyorg(String modifyorg) 
    {
        this.modifyorg = modifyorg;
    }

    public String getModifyorg() 
    {
        return modifyorg;
    }
    public void setSchemestatus(String schemestatus) 
    {
        this.schemestatus = schemestatus;
    }

    public String getSchemestatus() 
    {
        return schemestatus;
    }
    public void setCreateDate(Date createDate) 
    {
        this.createDate = createDate;
    }

    public Date getCreateDate() 
    {
        return createDate;
    }
    public void setUpdateDate(Date updateDate) 
    {
        this.updateDate = updateDate;
    }

    public Date getUpdateDate() 
    {
        return updateDate;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    public List<OIndiContent> getOindiContentList() {
        return oindiContentList;
    }

    public void setOindiContentList(List<OIndiContent> oindiContentList) {
        this.oindiContentList = oindiContentList;
    }

    public String getOrgname() {
        return orgname;
    }

    public void setOrgname(String orgname) {
        this.orgname = orgname;
    }

    public String getCreateByName() {
        return createByName;
    }

    public void setCreateByName(String createByName) {
        this.createByName = createByName;
    }

    public int getActinum() {
        return actinum;
    }

    public void setActinum(int actinum) {
        this.actinum = actinum;
    }

    public int getConfiactinum() {
        return confiactinum;
    }

    public void setConfiactinum(int confiactinum) {
        this.confiactinum = confiactinum;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("schemename", getSchemename())
            .append("starttime", getStarttime())
            .append("endtime", getEndtime())
            .append("manageorg", getManageorg())
            .append("budgetdesc", getBudgetdesc())
            .append("schemebudget", getSchemebudget())
            .append("attach", getAttach())
            .append("modifyemp", getModifyemp())
            .append("modifytime", getModifytime())
            .append("modifyorg", getModifyorg())
            .append("schemestatus", getSchemestatus())
            .append("createBy", getCreateBy())
            .append("createDate", getCreateDate())
            .append("updateBy", getUpdateBy())
            .append("updateDate", getUpdateDate())
            .append("remark", getRemark())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
